home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / pango-1.0 / pango / pango-script.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-04-25  |  5.1 KB  |  127 lines

  1. /* -*- mode: C; c-file-style: "gnu" -*- */
  2. /* Pango
  3.  * pango-script.h: Script tag handling
  4.  *
  5.  * Copyright (C) 2002 Red Hat Software
  6.  *
  7.  * This library is free software; you can redistribute it and/or
  8.  * modify it under the terms of the GNU Library General Public
  9.  * License as published by the Free Software Foundation; either
  10.  * version 2 of the License, or (at your option) any later version.
  11.  *
  12.  * This library is distributed in the hope that it will be useful,
  13.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.     See the GNU
  15.  * Library General Public License for more details.
  16.  *
  17.  * You should have received a copy of the GNU Library General Public
  18.  * License along with this library; if not, write to the
  19.  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  20.  * Boston, MA 02111-1307, USA.
  21.  */
  22.  
  23. #ifndef __PANGO_SCRIPT_H__
  24. #define __PANGO_SCRIPT_H__
  25.  
  26. #include <glib.h>
  27.  
  28. #include <pango/pango-types.h>
  29.  
  30. G_BEGIN_DECLS
  31.  
  32. /**
  33.  * PangoScriptIter:
  34.  
  35.  * A #PangoScriptIter is used to iterate through a string
  36.  * and identify ranges in different scripts.
  37.  **/
  38. typedef struct _PangoScriptIter PangoScriptIter;
  39.  
  40. typedef enum {                         /* ISO 15924 code */
  41.       PANGO_SCRIPT_INVALID_CODE = -1,
  42.       PANGO_SCRIPT_COMMON       = 0,   /* Zyyy */
  43.       PANGO_SCRIPT_INHERITED,          /* Qaai */
  44.       PANGO_SCRIPT_ARABIC,             /* Arab */
  45.       PANGO_SCRIPT_ARMENIAN,           /* Armn */
  46.       PANGO_SCRIPT_BENGALI,            /* Beng */
  47.       PANGO_SCRIPT_BOPOMOFO,           /* Bopo */
  48.       PANGO_SCRIPT_CHEROKEE,           /* Cher */
  49.       PANGO_SCRIPT_COPTIC,             /* Qaac */
  50.       PANGO_SCRIPT_CYRILLIC,           /* Cyrl (Cyrs) */
  51.       PANGO_SCRIPT_DESERET,            /* Dsrt */
  52.       PANGO_SCRIPT_DEVANAGARI,         /* Deva */
  53.       PANGO_SCRIPT_ETHIOPIC,           /* Ethi */
  54.       PANGO_SCRIPT_GEORGIAN,           /* Geor (Geon, Geoa) */
  55.       PANGO_SCRIPT_GOTHIC,             /* Goth */
  56.       PANGO_SCRIPT_GREEK,              /* Grek */
  57.       PANGO_SCRIPT_GUJARATI,           /* Gujr */
  58.       PANGO_SCRIPT_GURMUKHI,           /* Guru */
  59.       PANGO_SCRIPT_HAN,                /* Hani */
  60.       PANGO_SCRIPT_HANGUL,             /* Hang */
  61.       PANGO_SCRIPT_HEBREW,             /* Hebr */
  62.       PANGO_SCRIPT_HIRAGANA,           /* Hira */
  63.       PANGO_SCRIPT_KANNADA,            /* Knda */
  64.       PANGO_SCRIPT_KATAKANA,           /* Kana */
  65.       PANGO_SCRIPT_KHMER,              /* Khmr */
  66.       PANGO_SCRIPT_LAO,                /* Laoo */
  67.       PANGO_SCRIPT_LATIN,              /* Latn (Latf, Latg) */
  68.       PANGO_SCRIPT_MALAYALAM,          /* Mlym */
  69.       PANGO_SCRIPT_MONGOLIAN,          /* Mong */
  70.       PANGO_SCRIPT_MYANMAR,            /* Mymr */
  71.       PANGO_SCRIPT_OGHAM,              /* Ogam */
  72.       PANGO_SCRIPT_OLD_ITALIC,         /* Ital */
  73.       PANGO_SCRIPT_ORIYA,              /* Orya */
  74.       PANGO_SCRIPT_RUNIC,              /* Runr */
  75.       PANGO_SCRIPT_SINHALA,            /* Sinh */
  76.       PANGO_SCRIPT_SYRIAC,             /* Syrc (Syrj, Syrn, Syre) */
  77.       PANGO_SCRIPT_TAMIL,              /* Taml */
  78.       PANGO_SCRIPT_TELUGU,             /* Telu */
  79.       PANGO_SCRIPT_THAANA,             /* Thaa */
  80.       PANGO_SCRIPT_THAI,               /* Thai */
  81.       PANGO_SCRIPT_TIBETAN,            /* Tibt */
  82.       PANGO_SCRIPT_CANADIAN_ABORIGINAL, /* Cans */
  83.       PANGO_SCRIPT_YI,                 /* Yiii */
  84.       PANGO_SCRIPT_TAGALOG,            /* Tglg */
  85.       PANGO_SCRIPT_HANUNOO,            /* Hano */
  86.       PANGO_SCRIPT_BUHID,              /* Buhd */
  87.       PANGO_SCRIPT_TAGBANWA,           /* Tagb */
  88.  
  89.       /* Unicode-4.0 additions */
  90.       PANGO_SCRIPT_BRAILLE,            /* Brai */
  91.       PANGO_SCRIPT_CYPRIOT,            /* Cprt */
  92.       PANGO_SCRIPT_LIMBU,              /* Limb */
  93.       PANGO_SCRIPT_OSMANYA,            /* Osma */
  94.       PANGO_SCRIPT_SHAVIAN,            /* Shaw */
  95.       PANGO_SCRIPT_LINEAR_B,           /* Linb */
  96.       PANGO_SCRIPT_TAI_LE,             /* Tale */
  97.       PANGO_SCRIPT_UGARITIC,           /* Ugar */
  98.       
  99.       /* Unicode-4.1 additions */
  100.       PANGO_SCRIPT_NEW_TAI_LUE,        /* Talu */
  101.       PANGO_SCRIPT_BUGINESE,           /* Bugi */
  102.       PANGO_SCRIPT_GLAGOLITIC,         /* Glag */
  103.       PANGO_SCRIPT_TIFINAGH,           /* Tfng */
  104.       PANGO_SCRIPT_SYLOTI_NAGRI,       /* Sylo */
  105.       PANGO_SCRIPT_OLD_PERSIAN,        /* Xpeo */
  106.       PANGO_SCRIPT_KHAROSHTHI          /* Khar */
  107. } PangoScript;
  108.  
  109. PangoScript pango_script_for_unichar         (gunichar             ch);
  110.  
  111. PangoScriptIter *pango_script_iter_new       (const char          *text,
  112.                           int                  length);
  113. void             pango_script_iter_get_range (PangoScriptIter      *iter,
  114.                           G_CONST_RETURN char **start,
  115.                           G_CONST_RETURN char **end,
  116.                           PangoScript          *script);
  117. gboolean         pango_script_iter_next      (PangoScriptIter      *iter);
  118. void             pango_script_iter_free      (PangoScriptIter      *iter);
  119.  
  120. PangoLanguage *pango_script_get_sample_language (PangoScript    script);
  121. gboolean       pango_language_includes_script   (PangoLanguage *language,
  122.                          PangoScript    script);
  123.  
  124. G_END_DECLS
  125.  
  126. #endif /* __PANGO_SCRIPT_H__ */
  127.